import request from '@/utils/request'

// 查询角色列表
export function listRole(query) {
  return request({
    url: '/system/role/list',
    method: 'get',
    params: query
  })
}
// 查询角色列表
export function allRole() {
  return request({
    url: '/system/role/allRole',
    method: 'get'
  })
}

// 查询角色详细
export function getRole(roleId) {
  return request({
    url: '/system/role/' + roleId,
    method: 'get'
  })
}

// 新增角色
export function addRole(data) {
  return request({
    url: '/system/role',
    method: 'post',
    data: data
  })
}

// 修改角色
export function updateRole(data) {
  return request({
    url: '/system/role',
    method: 'put',
    data: data
  })
}

// 角色数据权限
export function dataScope(data) {
  return request({
    url: '/system/role/dataScope',
    method: 'put',
    data: data
  })
}

// 角色状态修改
export function changeRoleStatus(roleId, status) {
  const data = {
    roleId,
    status
  }
  return request({
    url: '/system/role/changeStatus',
    method: 'put',
    data: data
  })
}

// 删除角色
export function delRole(roleId) {
  return request({
    url: '/system/role/' + roleId,
    method: 'delete'
  })
}

// 导出角色
export function exportRole(query) {
  return request({
    url: '/system/role/export',
    method: 'get',
    params: query
  })
}

// 根据角色ID查询使用该角色的全部用户
export function findByRoleId(roleId) {
 return request({
   url: '/system/role/findByRoleId/' + roleId,
   method: 'get'
 })
}

// 保存用户角色信息
export function saveUserRole(data) {
  return request({
    url: '/system/role/saveUserRole/' + data.roleId,
    method: 'post',
    data: data.sysUserRole
  })
}

// 查询取消选择的用户中角色数量等于一的
export function selectLastRole(array) {
  return request({
    url: '/system/role/selectLastRole',
    method: 'post',
    data: array
  })
}

// 查询系统角色导出历史列表
export function listSysRoleExportHistory(query) {
  return request({
    url: '/history/sysRoleExportHistory/list',
    method: 'get',
    params: query
  })
}

// 删除系统角色导出历史
export function delSysRoleExportHistory(id) {
  return request({
    url: '/history/sysRoleExportHistory/' + id,
    method: 'delete'
  })
}

// 导出系统角色导出历史
export function exportSysRoleExportHistory() {
  return request({
    url: '/history/sysRoleExportHistory/export',
    method: 'get'
  })
}

export function exportFolderRoleHistory() {
  return request({
    url: '/history/sysRoleExportHistory/exportFolderRoleHistory',
    method: 'get'
  })
}
